//---------------------------------------------------------------------------

#ifndef DLH
#define DLH
#include "Lista.h"
#include "Linea.h"
#include "lapiz.h"
#include <fstream.h>
//---------------------------------------------------------------------------
class DL{
        private:
               Lista <Linea> * lineas;
        public:
               GLfloat r,g,b;




               DL(){this->lineas = new Lista<Linea>();
                             r=(GLfloat)(random(200)+25)/(GLfloat)255;
                             g=(GLfloat)(random(200)+25)/(GLfloat)255;
                             b=(GLfloat)(random(200)+25)/(GLfloat)255;};

               ~DL(){if(lineas!=NULL)delete lineas;};
               DL* copiar();
               void mover(PV* p);
               void draw();
               inline Lista<Linea>* getLineas(){return lineas;};
               inline void setLineas(Lista<Linea>* a){lineas = a;};
               bool igual(DL * lineas);
               void anadeLinea(Linea * l);
               void eliminaLinea(Linea * l);
               bool guarda(ofstream & Archivo);
               bool abre(ifstream & Archivo);
               bool recortar(PV * p1,PV * p2);
               bool marcar(DL * dl,PV * p1, PV * p2);
               void giraConCentro(PV * centro,GLfloat ang);
};



#endif
 